package appapi.dto;

import cn.afterturn.easypoi.excel.annotation.Excel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.time.LocalDateTime;


/**
 * 设备告警记录 实体类
 *
 * @author hlm
 * @since
 */
@Data
@ApiModel(description = "设备告警记录导出")
public class DeviceAlarmExportDTO implements Serializable {

    /**
     * 设备SN
     */
    @ApiModelProperty(value = "设备SN")
    @Excel(name = "设备SN",orderNum = "0",width = 50)
    private String deviceSn;

    /**
     * 项目名称
     */
    @ApiModelProperty(value = "所属项目")
    @Excel(name = "所属项目",orderNum = "0",width = 50)
    private String projName;

    /**
     * 设备类型 0:塔吊 1:升降机 2:龙门吊 3:架桥机 4:爬模 5:挂篮
     */
    @ApiModelProperty(value = "设备类型 0:塔吊 1:升降机 2:龙门吊 3:架桥机 4:爬模 5:挂篮 ")
    @Excel(name = "设备类型",orderNum = "0",width = 50 ,replace = {"塔吊_0", "升降机_1", "龙门吊_2", "架桥机_3" , "爬模_4" ,"挂篮_5"})
    private Integer deviceType;

    /**
     * 告警类型
     */
    @ApiModelProperty(value = "告警类型")
    @Excel(name = "告警类型",orderNum = "0",width = 50)
    private String alarmDetail;

    /**
     * 告警对象
     */
    @ApiModelProperty(value = "告警对象")
    @Excel(name = "告警对象",orderNum = "0",width = 50)
    private String alarmSource;

    /**
     * 告警级别
     */
    @ApiModelProperty(value = "告警级别")
    @Excel(name = "告警级别",orderNum = "0",width = 50 )
    private Integer alarmLevel;


    /**
     * 告警时间
     */
    @ApiModelProperty(value = "告警时间")
    @Excel(name = "告警时间",orderNum = "0",width = 50 , format = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime timeStamp;
    /**
     * 告警状态 0待处理 1已恢复 2已处置(处理状态)
     */
    @ApiModelProperty(value = "告警状态 0待处理 1已恢复 2已处置(处理状态)")
    @Excel(name = "处理状态",orderNum = "0",width = 50, replace = {"待处理_0", "已恢复_1", "已处置_2"} )
    private Integer alarmStatus;

    /**
     * 处理时间
     */
    @ApiModelProperty(value = "处理时间")
    @Excel(name = "处理时间",orderNum = "0",width = 50 , format = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime handleTime;
}
